今天我們來試試TensorFlow官方推出的教學,實體操作運用Google Colaboratory教你簡單訓練出一個能夠對影像進行分類的神經網路模型。![]()

1.設定TensorFlow
先將TensorFlow匯入程式中
2.匯入資料集
載入並準備MNIST資料集(將樣本資料從整數轉換為浮點數)
3.建構機器學習模型
透過堆疊層來建構tf.keras.Sequential模型

每個樣本都會回傳一個包含logits或log-odds分數的向量(一個類別回傳一個)

tf.nn.softmax函數將這些logits轉換為每個類別的機率

使用losses.SparseCategoricalCrossentropy為訓練定義損失函數,它能夠接受logits向量和True索引,並為每個樣本傳回一個標量損失
****
(此損失等於true類別的負對數機率,如果模型確定類別正確,則損失為0)

開始訓練之前,使用Keras Model.compile配置和編譯模型。將optimizer類別設為adam,將loss設定為先前定義的loss_fn函數,並透過將metrics參數設為來accuracy指定要為模型評估的指標。
4.訓練並評估模型
使用Model.fit方法來調適模型參數並最小化損失
(Model.evaluate方法通常在Validation-set或Test-set上檢查模型效能)

(目前的準確率為0.9777,loss為0.0729)
5.傳回機率
(封裝經過訓練的模型,並將softmax附加到模型中)
